﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Sige
{
    public partial class AltaLocalidades : Form
    {
        Accesoadatos datos = new Accesoadatos();
        Clase_Localidades loc = new Clase_Localidades();

        public AltaLocalidades(string cp)
        {
            InitializeComponent();
            txtCP.Text = cp;
        }

        private void btnCerrar_Click(object sender, EventArgs e)
        {
            if (txtCP.Text == "" && txtDescripcionLoc.Text == "")
            {
                ActiveForm.Close();
            }
            else if (MessageBox.Show("No ha completado el ingreso de datos. ¿Desea salir?", "Cerrar", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    ActiveForm.Close();
                        else txtCP.Focus();
            }

        private void txtCP_Leave(object sender, EventArgs e)
        {
            string desc = "";
            if (loc.Localidad_Existente(datos.getruta(), txtCP.Text, ref desc) == true)
            {
                MessageBox.Show("El código postal ya existe", "El código ya existe", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtDescripcionLoc.Text = desc;
                txtCP.Focus();
            }
        }

        private void txtDescripcionLoc_Leave(object sender, EventArgs e)
        {
            if (loc.Descripcion_Localidad_Existente(datos.getruta(), txtDescripcionLoc.Text) == true)
            {
                MessageBox.Show("El nombre de la localidad ya existe", "El nombre ya existe", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtDescripcionLoc.Text = "";
                txtDescripcionLoc.Focus();
            }
        }

        private void btnGrabar_Click(object sender, EventArgs e)
        {
            string err = "";
            if (txtCP.Text != "" && txtDescripcionLoc.Text != "")
            {
                loc.Codigo_Localidad = txtCP.Text;
                loc.Descripcion = txtDescripcionLoc.Text;
                //loc.Estado = true;
                if (loc.Insertar(ref err) == true)
                {
                    MessageBox.Show("La localidad se grabó con éxito", "La localidad se grabó", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    txtCP.Text = "";
                    txtDescripcionLoc.Text = "";
                }
                else
                {
                    MessageBox.Show("Fallo al grabar localidad. Reintente.", "Error al grabar", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    MessageBox.Show(err, "Error");
                    txtCP.Text = "";
                    txtDescripcionLoc.Text = "";
                }
            }
            else MessageBox.Show("Hay campos sin completar", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
        }

        private void AltaLocalidades_Load(object sender, EventArgs e)
        {
            
        }
    }
}
